Range: Fix inverted vert scrolling on horiz Ranges
authorDaniel Boles <dboles@src.gnome.org>
Tue, 19 Dec 2017 18:07:02 +0000 (18:07 +0000)
committerDaniel Boles <dboles@src.gnome.org>
Tue, 19 Dec 2017 18:40:51 +0000 (18:40 +0000)
Users expect, & previous patches have tried to assure, that scrolling up
over a horizontal Range will cause the value to increase & vice-versa.
But the path using directions was still negating the delta & decreasing
the value on scrolling up. This could be seen on Win32 or X without XI2.

So, only negate the delta when scrolling down (or left), not up, so that
scrolling up (or right) will make the value increase for any event type.

https://bugzilla.gnome.org/show_bug.cgi?id=737175#c5

gtk/gtkrange.c

index 78736871cc6250a6fedf6409a58cdd9105e45686..16e78f16d37db825d2231b015b4953680da8cb3f 100644 (file)
@@ -3059,7 +3059,7 @@ _gtk_range_get_wheel_delta (GtkRange       *range,
     }
   else if (gdk_event_get_scroll_direction ((GdkEvent *) event, &direction))
     {
-      if (direction == GDK_SCROLL_UP ||
+      if (direction == GDK_SCROLL_DOWN ||
           direction == GDK_SCROLL_LEFT)
         delta = - scroll_unit;
       else